#include "fun.h"
#include "fifo.h"
#include "dri_io.h"
#include "font.h"
#include "doble_list.h"
#include "touch2.h"
#include "main.h"

extern SL bmp_head;
extern SL avi_head;
extern SL mp3_head;
extern int i;
extern int x_d, y_d;

int stage = 1;     //图片位置
int avi_stage = 1; //视频位置
int mp3_stage = 1; //音乐位置
int flag = 1;
extern int fifo_fd;
int rs = 0;

void type_find()
{
    dri_io_init("/IOT/laoliu/zj", ".bmp", 1);
    dri_io_init("/IOT/laoliu/zj", ".avi", 2);
    dri_io_init("/IOT/laoliu/zj", ".mp3", 3);
    i == 0;
    sleep(3);
    show_color();
}

int return0(int x_end, int y_end)
{
    Display_characterX(730,      // x坐标起始点
                       440,      // y坐标起始点
                       "menu",   // GB2312 中文字符串
                       0xFF0000, //字体颜色值
                       2);
    if ((x_end > 909) && (y_end > 545)) //退出 x909 y545
    {
        touchExit();
        UnInit_Font();
        // system("killall -9 mplayer");
        printf("quit!\n");
        show_color();
        return main();
    }
}

void pitch_show()
{
    show_color();
    //dri_io_init("/IOT/laoliu/zj", ".bmp", 1);
    file_find("..",&bmp_head,".bmp");
    getInit();
    Display_characterX(250,             // x坐标起始点
                       190,             // y坐标起始点
                       "Slide Start !", // GB2312 中文字符串
                       0xFF0000,        //字体颜色值
                       3);

    while (1)
    {
        // touching();
        rs = GetDirection();
        return0(x_d, y_d);
        printf("%d\n", rs);

        if (3 == rs)
        {
            stage = cheak_up(&bmp_head, stage, 1);
        }
        if (4 == rs)
        {
            stage = cheak_down(&bmp_head, stage, 1);
        }
        rs = 0;
    }
}

void video_show()
{
    show_color();
    show_bmp("./bfq.bmp", 0, 430);
    // system("mplayer -slave -quiet -geometry 0:0 -zoom -x 800 -y 430 -input file=/tmp/fifo /IOT/laoliu/zj/mv2.avi &");
    //dri_io_init("/IOT/laoliu/zj", ".avi", 2);
    file_find("..",&avi_head,".avi");

    DIR *dir2 = opendir("/mnt/udisk/movie");
    if (dir2 != NULL)
    {
        printf("有U盘 \n");
        dri_io_init("/mnt/udisk/movie", ".avi", 2);
    }
    else
    {
        printf("无U盘\n");
    }
    dir2=NULL;
   

    while (1)
    {
        // touching();
        GetDirection();
        printf("%d  %d  %d\n", x, y, t);
        if (x_d > 770 && x_d < 810 && y_d > 545) //快退
        {
            slave_write_cmd(fifo_fd, "seek -5\n");
        }
        if (x_d > 865 && x_d < 905 && y_d > 545) //快进
        {
            slave_write_cmd(fifo_fd, "seek +5\n");
        }
        if (x_d > 660 && x_d < 700 && y_d > 545) //音量-
        {
            slave_write_cmd(fifo_fd, "volume -5\n");
        }
        if (x_d > 585 && x_d < 625 && y_d > 545) //音量+
        {
            slave_write_cmd(fifo_fd, "volume +5\n");
        }
        if (x_d > 430 && x_d < 460 && y_d > 545) //暂停
        {
            if (flag == 1)
            {
                slave_write_cmd(fifo_fd, "pause \n");
                show_bmp("bfq.bmp", 0, 430);
                show_bmp("picom.bmp", 328, 430);
                flag = 0;
            }
            else if (flag == 0)
            {
                slave_write_cmd(fifo_fd, "pause \n");
                show_bmp("bfq.bmp", 0, 430);
                flag = 1;
            }
        }

        if (x_d > 290 && x_d < 310 && y_d > 545)
        {
            system("killall -9 mplayer");
            return main();
        }

        return0(x_d, y_d); //退出
        //}

        if (x_d > 520 && x_d < 540 && y_d > 545) //下一个
        {
            avi_stage = cheak_down(&avi_head, avi_stage, 2);
            show_bmp("picom.bmp", 328, 430);
            printf("avi_stage=%d\n", avi_stage);
        }

        if (x_d > 340 && x_d < 370 && y_d > 545) //上一个
        {
            avi_stage = cheak_up(&avi_head, avi_stage, 2);
            show_bmp("picom.bmp", 328, 430);
            printf("avi_stage=%d\n", avi_stage);
        }
    }

    touchExit();
}
void mp3_show()
{
    show_color();
    show_bmp("./bfq.bmp", 0, 430);
    show_bmp("./icom.bmp", 330, 130);
    //dri_io_init("./zj", ".mp3", 3);
    file_find("..",&mp3_head,".mp3");
    // system("mplayer -slave -quiet -geometry 0:0 -zoom -x 800 -y 480 -input file=/tmp/fifo /IOT/mp3/Jay1.mp3 &");
    while (1)
    {

        GetDirection();

        if (x_d > 770 && x_d < 810 && y_d > 545)
        {
            slave_write_cmd(fifo_fd, "seek -5\n");
        }
        if (x_d > 865 && x_d < 905 && y_d > 545)
        {
            slave_write_cmd(fifo_fd, "seek +5\n");
        }
        if (x_d > 660 && x_d < 700 && y_d > 545)
        {
            slave_write_cmd(fifo_fd, "volume -5\n");
        }
        if (x_d > 585 && x_d < 625 && y_d > 545)
        {
            slave_write_cmd(fifo_fd, "volume +5\n");
        }
        if (x_d > 430 && x_d < 460 && y_d > 545)
        {
            if (flag == 1)
            {
                slave_write_cmd(fifo_fd, "pause \n");
                show_bmp("bfq.bmp", 0, 430);
                show_bmp("picom.bmp", 328, 430);
                flag = 0;
            }
            else if (flag == 0)
            {
                slave_write_cmd(fifo_fd, "pause \n");
                show_bmp("bfq.bmp", 0, 430);
                flag = 1;
            }
        }

        if (x_d > 290 && x_d < 310 && y_d > 545)
        {
            system("killall -9 mplayer");
            return main();
        }

        return0(x_d, y_d); //退出

        if (x_d > 520 && x_d < 540 && y_d > 545) //下一个
        {
            mp3_stage = cheak_down(&mp3_head, mp3_stage, 3);
            show_bmp("picom.bmp", 328, 430);
            printf("mp3_stage=%d\n", mp3_stage);
        }

        if (x_d > 340 && x_d < 370 && y_d > 545) //上一个
        {
            mp3_stage = cheak_up(&mp3_head, mp3_stage, 3);
            show_bmp("picom.bmp", 328, 430);
            printf("mp3_stage=%d\n", mp3_stage);
        }
    }

    touchExit();
}
